// type: Q-问题，A-答案，H-历史消息，S-停止生成，C-结束会话，T-转接会话，R-参考来源，F-点赞/点踩回执
export const MESSAGE_TYPE = {
    QUESTION: 'Q',
    ANSWER: 'A',
    HISTORY: 'H',
    STOP: 'S',
    CLOSE: 'C',
    TRANSFER: 'T',
    REFERENCE: 'R',
    FEEDBACK: 'F',
    WORKBENCH_HISTORY: 'WH'
};
export const NODE_PROP = {
    // 后端接口节点类型
    // UNKNOWN = 0;              // 未指定
    // START = 1 ;               // 开始节点, StartNodeData
    // PARAMETER_EXTRACTOR = 2;  // 参数提取节点, ParameterExtractorNodeData
    // LLM = 3;                  // 大模型节点, LLMNodeData
    // LLM_KNOWLEDGE_QA = 4;     // 知识问答节点, LLMKnowledgeQANodeData
    // KNOWLEDGE_RETRIEVER = 5;  // 知识检索节点, KnowledgeRetrieverNodeData
    // TAG_EXTRACTOR = 6;        // 标签提取节点, TagExtractorNodeData
    // CODE_EXECUTOR = 7;        // 代码执行节点, CodeExecutorNodeData
    // TOOL = 8;                 // 工具节点, ToolNodeData
    // LOGIC_EVALUATOR = 9;      // 逻辑判断节点, LogicEvaluatorNodeData
    // ANSWER = 10;              // 回复节点, AnswerNodeData
    START: {
        type: 'START',
        name: '开始',
        description: '',
        // icon: 'start_icon',
        icon: 'node_start',
        iconColor: 'var(--color-gray-10)',
        miniMapColor: 'var(--color-gray-3)',
        tooltip: '工作流的起点',
        type_num: 1,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112969'
    },
    PARAMETER_EXTRACTOR: {
        type: 'PARAMETER_EXTRACTOR',
        name: '参数提取',
        description: '通过与用户进行“单轮、多轮对话”来收集参数，参数缺失、模糊时可以自动反问澄清',
        // icon: 'parameter_extractor_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-orange-5)',
        miniMapColor: 'var(--color-orange-3)',
        tooltip: '通过与用户进行“单轮、多轮对话”来收集参数，参数缺失、不明确时可以自动反问澄清。',
        type_num: 2,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112962'
    },
    LLM: {
        type: 'LLM',
        name: '大模型',
        description: '使用大模型处理自然语言要求，如回答问题',
        // icon: 'llm_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '大模型对自然语言进行处理，如 回答问题',
        type_num: 3,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112963'
    },
    LLM_KNOWLEDGE_QA: {
        type: 'LLM_KNOWLEDGE_QA',
        name: '大模型知识问答',
        description: '从限定范围的知识库中检索内容，并通过大模型润色回复',
        // icon: 'llm_knowledge_qa_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '从限定范围的知识库中检索内容，并通过大模型润色回复',
        type_num: 4,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112964'
    },
    TAG_EXTRACTOR: {
        type: 'TAG_EXTRACTOR',
        name: '大模型标签提取',
        description: '提取设定的标签',
        // icon: 'tag_extractor_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '提取设定的标签',
        type_num: 6,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112965'
    },
    KNOWLEDGE_RETRIEVER: {
        type: 'KNOWLEDGE_RETRIEVER',
        name: '知识检索',
        description: '从限定范围的知识库中检索内容',
        // icon: 'knowledge_retriever_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '从限定范围的知识库中检索内容',
        type_num: 5,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112966'
    },
    CODE_EXECUTOR: {
        type: 'CODE_EXECUTOR',
        name: '代码',
        description: '编写代码实现自定义逻辑',
        // icon: 'code_extractor_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '编写代码实现自定义逻辑',
        type_num: 7,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112967'
    },
    TOOL: {
        type: 'TOOL',
        name: '工具',
        description: '调用“自定义API”，集成外部数据和服务，适合在单一工作流内调用（多个工作流重复调用时，建议创建插件）',
        // icon: 'tool_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '调用“自定义API”，可以将外部数据和服务集成到工作流中',
        type_num: 8,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112968'
    },
    LOGIC_EVALUATOR: {
        type: 'LOGIC_EVALUATOR',
        name: '条件判断',
        description: '根据设置的条件，分流到下游不同分支。满足条件时运行对应分支，均不满足运行“else”分支',
        // icon: 'logic_evaluator_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-blue-5)',
        miniMapColor: 'var(--color-blue-3)',
        tooltip: '根据设置的条件，分流到下游不同分支。满足条件时运行对应分支，均不满足时运行“else”分支',
        type_num: 9,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112970'
    },
    ANSWER: {
        type: 'ANSWER',
        name: '回复',
        description: '流程中回复的内容，可以引用前序变量或填写固定内容',
        // icon: 'answer_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-blue-5)',
        miniMapColor: 'var(--color-blue-3)',
        tooltip: '流程中回复的内容，可以引用前序变量或填写固定内容',
        type_num: 10,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/112971'
    },
    OPTION_CARD: {
        type: 'OPTION_CARD',
        name: '选项卡',
        description:
        '提供可点击的选项，适合选项明确且数量少的情况。\n' +
        '支持手动输入固定选项（如售前、售后咨询） 或 动态拉取变量值（如拉取客户的订单列表）',
        // icon: 'option_card_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-orange-5)',
        miniMapColor: 'var(--color-orange-3)',
        tooltip:
        '提供可点击的选项，适合选项明确且数量少的情况，例如客服场景快速选择咨询的产品类型。（如果用户直接输入消息，仅识别本轮对话的选项）',
        type_num: 11,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/115756'
    },
    ITERATION: {
        type: 'ITERATION',
        name: '循环',
        description: '对“循环体工作流”执行多次步骤，直到输出所有结果，如总结多篇文档的重点',
        // icon: 'loop_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-blue-5)',
        miniMapColor: 'var(--color-blue-3)',
        tooltip: '对“循环体工作流”执行多次步骤，直到输出所有结果，如总结多篇文档的重点',
        type_num: 12,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/115750'
    },
    INTENT_RECOGNITION: {
        type: 'INTENT_RECOGNITION',
        name: '大模型意图识别',
        description: '大模型根据“待识别内容”识别意图，如“是、否”',
        // icon: 'intent_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '大模型根据“待识别内容”识别意图，如“是、否”',
        type_num: 13,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/115747'
    },
    WORKFLOW_REF: {
        type: 'WORKFLOW_REF',
        name: '工作流',
        description: '引用其他工作流，实现更复杂的业务逻辑',
        // icon: 'flow_icon',
        icon: 'node_workflow',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '引用其他工作流，实现更复杂的业务逻辑',
        type_num: 14,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/115749'
    },
    PLUGIN: {
        type: 'PLUGIN',
        name: '插件',
        description: '由“多个工具”组成的集合，支持调用“官方 和 自定义插件”。配置1次可重复调用、统一管理。 创建插件',
        // icon: 'plugin_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '由“多个工具”组成的集合，支持调用“官方 和 自定义插件”。配置1次可重复调用、统一管理。 创建插件',
        type_num: 15,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/115748'
    },
    END: {
        type: 'END',
        name: '结束',
        description: '工作流的终点，可定义最终输出的变量',
        // icon: 'end_icon',
        icon: 'node_robot',
        iconColor: '',
        miniMapColor: 'var(--color-gray-3)',
        tooltip: '工作流的终点，可定义最终输出的变量',
        type_num: 16,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/115751'
    },
    VAR_AGGREGATION: {
        type: 'VAR_AGGREGATION',
        name: '变量聚合',
        description: '聚合前序条件分支中的输出变量，便于集中管理，自动忽略为空的参数值',
        // icon: 'var_aggregation_icon',
        icon: 'node_robot',
        iconColor: 'var(--color-purple-5)',
        miniMapColor: 'var(--color-purple-3)',
        tooltip: '聚合前序条件分支中的输出变量，便于集中管理，自动忽略为空的参数值',
        type_num: 17,
        helpDocUrl: 'https://cloud.tencent.com/document/product/1759/115751'
    }
};

export const FEEDBACK_TAG_LIST = [{
    id: 1,
    title: '理解有误',
    children: [
        '答非所问',
        '未理解要求',
        '未理解上下文信息'
    ]
}, {
    id: 2,
    title: '答案存在错误',
    children: [
        '存在事实错误',
        '存在逻辑问题',
        '出现重复内容',
        '格式/语法错误',
        '内容不专业',
        '系统报错'
    ]
}, {
    id: 3,
    title: '存在违法违规信息',
    children: [
        '存在违法信息',
        '存在偏见与歧视',
        '其他价值观问题'
    ]
}];

// 应用类型；knowledge_qa-知识问答管理；summary-知识摘要；classify-知识标签提取
export const APP_TYPE = {
    QA: 'knowledge_qa',
    SUMMARY: 'summary',
    CLASSIFYS: 'classify'
};



// WEBPACK FOOTER //
// ./src/constants/chat.js
